package com.monliao.util;

import org.htmlparser.Node;
import org.htmlparser.NodeFilter;
import org.htmlparser.Parser;
import org.htmlparser.filters.NodeClassFilter;
import org.htmlparser.tags.LinkTag;
import org.htmlparser.util.NodeList;

public class HtmlAll {
	
			
			public static void main(String[] args) {
				
				
						String url="http://mm.10086.cn/";
						
						
						//获取页面中的<a href=’xxx’ [属性]>格式的链接
						nodeFilterTagClass(url, "UTF-8", LinkTag.class);
						
			}

			/**
			* 
			* 过滤页面中的标签信息
			* 
			* @param url 要解析的url页面
			* @param encoding 使用的字符编码
			* @param tagclass 
			* 要或取得页面标签,如要获取页面中的超链接 值为LinkTag.class,要获取页面中图片链接,值为ImageTag.class
			* 要传入的标签类为org.htmlparser.tags下的
			*/
			public static void nodeFilterTagClass(String url,String encoding,Class tagclass){
			try {
			Parser parser = new Parser();
			parser.setURL(url);
			if(null==encoding){
			parser.setEncoding(parser.getEncoding());
			}else{
			parser.setEncoding(encoding);
			}
			//过滤页面中的链接标签
			NodeFilter filter = new NodeClassFilter(tagclass);
			NodeList list = parser.extractAllNodesThatMatch(filter);
			for(int i=0; i<list.size();i++){
			Node node = ((Node)list.elementAt(i));
			System.out.println("link is :" + node.toHtml());
			}
			} catch (Exception e) {
			e.printStackTrace();
			}
			}
}
